# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=irssi
pkgver=1.4.1
pkgrel=0
pkgdesc="Modular textUI IRC client with IPv6 support"
url="https://irssi.org/"
arch="all"
license="GPL-2.0-or-later WITH OpenSSL-Exception"
makedepends="glib-dev openssl1.1-compat-dev ncurses-dev perl-dev automake autoconf libtool libotr-dev"
subpackages="$pkgname-doc $pkgname-dev $pkgname-proxy $pkgname-perl $pkgname-otr"
source="https://github.com/irssi/irssi/releases/download/$pkgver/irssi-$pkgver.tar.xz
	"

# secfixes:
#   1.2.2-r0:
#     - CVE-2019-15717
#   1.2.1-r0:
#     - CVE-2019-13045
#   1.1.2-r0:
#     - CVE-2019-5882
#   1.0.3-r0:
#     - CVE-2017-9468
#     - CVE-2017-9469
#   1.0.4-r0:
#     - CVE-2017-10965
#     - CVE-2017-10966
#   1.0.5-r0:
#     - CVE-2017-15721
#     - CVE-2017-15722
#     - CVE-2017-15723
#     - CVE-2017-15227
#     - CVE-2017-15228
#   1.0.6-r0:
#     - CVE-2018-5205
#     - CVE-2018-5206
#     - CVE-2018-5207
#     - CVE-2018-5208
#   1.1.1-r0:
#     - CVE-2018-7050
#     - CVE-2018-7051
#     - CVE-2018-7052
#     - CVE-2018-7053
#     - CVE-2018-7054

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--with-perl=module \
		--with-perl-lib=vendor \
		--with-proxy \
		--enable-true-color \
		--with-otr=yes
	make
}

check() {
	./src/fe-text/irssi -v
}

package() {
	make DESTDIR="$pkgdir" install
	find "$pkgdir" -name perllocal.pod -delete
}

perl() {
	depends="$pkgname perl"
	pkgdesc="Irssi perl support and scripts"
	mkdir -p "$subpkgdir"/usr/share/irssi
	mv "$pkgdir"/usr/share/irssi/scripts \
		"$subpkgdir"/usr/share/irssi/
	mkdir -p "$subpkgdir"/usr/lib/irssi/modules
	mv "$pkgdir"/usr/lib/irssi/modules/libfe_perl.* \
		"$pkgdir"/usr/lib/irssi/modules/libperl_core.* \
		"$subpkgdir"/usr/lib/irssi/modules/
	mv "$pkgdir"/usr/lib/perl5 "$subpkgdir"/usr/lib/
	#need write permission when stripping
	for i in TextUI/TextUI.so Irssi.so Irc/Irc.so UI/UI.so; do
		chmod +w "$subpkgdir"/usr/lib/perl5/vendor_perl/auto/Irssi/$1
	done
}

proxy() {
	depends="$pkgname"
	pkgdesc="Irssi module for enabling bouncer-like functionality"
	mkdir -p "$subpkgdir"/usr/lib/irssi/modules
	mv "$pkgdir"/usr/lib/irssi/modules/libirc_proxy.* "$subpkgdir"/usr/lib/irssi/modules/
}

otr() {
	depends="$pkgname"
	pkgdesc="Irssi module for enabling OTR functionality"
	mkdir -p "$subpkgdir"/usr/lib/irssi/modules
	mv "$pkgdir"/usr/lib/irssi/modules/libotr_core.* "$subpkgdir"/usr/lib/irssi/modules/
	mkdir -p "$subpkgdir"/usr/share/irssi/help
	mv "$pkgdir"/usr/share/irssi/help/otr "$subpkgdir"/usr/share/irssi/help/
}

sha512sums="
e0c53c456bd92af60e8845dba6d338bc0f880639ba19118c22324a5044101a16f7a387377f2a15aa74364f75fe9ed0d5fac0f353c3ea2158190f76ed89dfdd22  irssi-1.4.1.tar.xz
"
